<!doctype html>
<html style='font-size:18px !important'>
<head>
    <meta charset='UTF-8'>
    <meta name='viewport' content='width=device-width initial-scale=1'>

    <link href='https://fonts.loli.net/css?family=Open+Sans:400italic,700italic,700,400&subset=latin,latin-ext'
          rel='stylesheet' type='text/css'/>
    <style type='text/css'>html {
        overflow-x: initial !important;
    }

    :root {
        --bg-color: #ffffff;
        --text-color: #333333;
        --select-text-bg-color: #B5D6FC;
        --select-text-font-color: auto;
        --monospace: "Lucida Console", Consolas, "Courier", monospace;
        --title-bar-height: 20px;
    }

    .mac-os-11 {
        --title-bar-height: 28px;
    }

    html {
        font-size: 14px;
        background-color: var(--bg-color);
        color: var(--text-color);
        font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
        -webkit-font-smoothing: antialiased;
    }

    body {
        margin: 0px;
        padding: 0px;
        height: auto;
        inset: 0px;
        font-size: 1rem;
        line-height: 1.42857143;
        overflow-x: hidden;
        background-image: inherit;
        background-size: inherit;
        background-attachment: inherit;
        background-origin: inherit;
        background-clip: inherit;
        background-color: inherit;
        tab-size: 4;
        background-position: inherit;
        background-repeat: inherit;
    }

    iframe {
        margin: auto;
    }

    a.url {
        word-break: break-all;
    }

    a:active, a:hover {
        outline: 0px;
    }

    .in-text-selection, ::selection {
        text-shadow: none;
        background: var(--select-text-bg-color);
        color: var(--select-text-font-color);
    }

    #write {
        margin: 0px auto;
        height: auto;
        width: inherit;
        word-break: normal;
        word-wrap: break-word;
        position: relative;
        white-space: normal;
        overflow-x: visible;
        padding-top: 36px;
    }

    #write.first-line-indent p {
        text-indent: 2em;
    }

    #write.first-line-indent li p, #write.first-line-indent p * {
        text-indent: 0px;
    }

    #write.first-line-indent li {
        margin-left: 2em;
    }

    .for-image #write {
        padding-left: 8px;
        padding-right: 8px;
    }

    body.typora-export {
        padding-left: 30px;
        padding-right: 30px;
    }

    .typora-export .footnote-line, .typora-export li, .typora-export p {
        white-space: pre-wrap;
    }

    .typora-export .task-list-item input {
        pointer-events: none;
    }

    @media screen and (max-width: 500px) {
        body.typora-export {
            padding-left: 0px;
            padding-right: 0px;
        }

        #write {
            padding-left: 20px;
            padding-right: 20px;
        }

        .CodeMirror-sizer {
            margin-left: 0px !important;
        }

        .CodeMirror-gutters {
            display: none !important;
        }
    }

    #write li > figure:last-child {
        margin-bottom: 0.5rem;
    }

    #write ol, #write ul {
        position: relative;
    }

    img {
        max-width: 100%;
        vertical-align: middle;
        image-orientation: from-image;
    }

    button, input, select, textarea {
        color: inherit;
        font-family: inherit;
        font-size: inherit;
        font-style: inherit;
        font-variant-caps: inherit;
        font-weight: inherit;
        font-stretch: inherit;
        line-height: inherit;
    }

    input[type="checkbox"], input[type="radio"] {
        line-height: normal;
        padding: 0px;
    }

    *, ::after, ::before {
        box-sizing: border-box;
    }

    #write h1, #write h2, #write h3, #write h4, #write h5, #write h6, #write p, #write pre {
        width: inherit;
    }

    #write h1, #write h2, #write h3, #write h4, #write h5, #write h6, #write p {
        position: relative;
    }

    p {
        line-height: inherit;
    }

    h1, h2, h3, h4, h5, h6 {
        break-after: avoid-page;
        break-inside: avoid;
        orphans: 4;
    }

    p {
        orphans: 4;
    }

    h1 {
        font-size: 2rem;
    }

    h2 {
        font-size: 1.8rem;
    }

    h3 {
        font-size: 1.6rem;
    }

    h4 {
        font-size: 1.4rem;
    }

    h5 {
        font-size: 1.2rem;
    }

    h6 {
        font-size: 1rem;
    }

    .md-math-block, .md-rawblock, h1, h2, h3, h4, h5, h6, p {
        margin-top: 1rem;
        margin-bottom: 1rem;
    }

    .hidden {
        display: none;
    }

    .md-blockmeta {
        color: rgb(204, 204, 204);
        font-weight: 700;
        font-style: italic;
    }

    a {
        cursor: pointer;
    }

    sup.md-footnote {
        padding: 2px 4px;
        background-color: rgba(238, 238, 238, 0.7);
        color: rgb(85, 85, 85);
        border-top-left-radius: 4px;
        border-top-right-radius: 4px;
        border-bottom-right-radius: 4px;
        border-bottom-left-radius: 4px;
        cursor: pointer;
    }

    sup.md-footnote a, sup.md-footnote a:hover {
        color: inherit;
        text-transform: inherit;
        text-decoration: inherit;
    }

    #write input[type="checkbox"] {
        cursor: pointer;
        width: inherit;
        height: inherit;
    }

    figure {
        overflow-x: auto;
        margin: 1.2em 0px;
        max-width: calc(100% + 16px);
        padding: 0px;
    }

    figure > table {
        margin: 0px;
    }

    tr {
        break-inside: avoid;
        break-after: auto;
    }

    thead {
        display: table-header-group;
    }

    table {
        border-collapse: collapse;
        border-spacing: 0px;
        width: 100%;
        overflow: auto;
        break-inside: auto;
        text-align: left;
    }

    table.md-table td {
        min-width: 32px;
    }

    .CodeMirror-gutters {
        border-right-width: 0px;
        background-color: inherit;
    }

    .CodeMirror-linenumber {
    }

    .CodeMirror {
        text-align: left;
    }

    .CodeMirror-placeholder {
        opacity: 0.3;
    }

    .CodeMirror pre {
        padding: 0px 4px;
    }

    .CodeMirror-lines {
        padding: 0px;
    }

    div.hr:focus {
        cursor: none;
    }

    #write pre {
        white-space: pre-wrap;
    }

    #write.fences-no-line-wrapping pre {
        white-space: pre;
    }

    #write pre.ty-contain-cm {
        white-space: normal;
    }

    .CodeMirror-gutters {
        margin-right: 4px;
    }

    .md-fences {
        font-size: 0.9rem;
        display: block;
        break-inside: avoid;
        text-align: left;
        overflow: visible;
        white-space: pre;
        background-image: inherit;
        background-size: inherit;
        background-attachment: inherit;
        background-origin: inherit;
        background-clip: inherit;
        background-color: inherit;
        position: relative !important;
        background-position: inherit;
        background-repeat: inherit;
    }

    .md-fences-adv-panel {
        width: 100%;
        margin-top: 10px;
        text-align: center;
        padding-top: 0px;
        padding-bottom: 8px;
        overflow-x: auto;
    }

    #write .md-fences.mock-cm {
        white-space: pre-wrap;
    }

    .md-fences.md-fences-with-lineno {
        padding-left: 0px;
    }

    #write.fences-no-line-wrapping .md-fences.mock-cm {
        white-space: pre;
        overflow-x: auto;
    }

    .md-fences.mock-cm.md-fences-with-lineno {
        padding-left: 8px;
    }

    .CodeMirror-line, twitterwidget {
        break-inside: avoid;
    }

    .footnotes {
        opacity: 0.8;
        font-size: 0.9rem;
        margin-top: 1em;
        margin-bottom: 1em;
    }

    .footnotes + .footnotes {
        margin-top: 0px;
    }

    .md-reset {
        margin: 0px;
        padding: 0px;
        border: 0px;
        outline: 0px;
        vertical-align: top;
        text-decoration: none;
        text-shadow: none;
        float: none;
        position: static;
        width: auto;
        height: auto;
        white-space: nowrap;
        cursor: inherit;
        line-height: normal;
        font-weight: 400;
        text-align: left;
        box-sizing: content-box;
        direction: ltr;
        background-position: 0px 0px;
    }

    li div {
        padding-top: 0px;
    }

    blockquote {
        margin: 1rem 0px;
    }

    li .mathjax-block, li p {
        margin: 0.5rem 0px;
    }

    li blockquote {
        margin: 1rem 0px;
    }

    li {
        margin: 0px;
        position: relative;
    }

    blockquote > :last-child {
        margin-bottom: 0px;
    }

    blockquote > :first-child, li > :first-child {
        margin-top: 0px;
    }

    .footnotes-area {
        color: rgb(136, 136, 136);
        margin-top: 0.714rem;
        padding-bottom: 0.143rem;
        white-space: normal;
    }

    #write .footnote-line {
        white-space: pre-wrap;
    }

    @media print {
        body, html {
            border: 1px solid transparent;
            height: 99%;
            break-after: avoid;
            break-before: avoid;
            font-variant-ligatures: no-common-ligatures;
        }

        #write {
            margin-top: 0px;
            padding-top: 0px;
            border-color: transparent !important;
        }

        .typora-export * {
            -webkit-print-color-adjust: exact;
        }

        .typora-export #write {
            break-after: avoid;
        }

        .typora-export #write::after {
            height: 0px;
        }

        .is-mac table {
            break-inside: avoid;
        }

        .typora-export-show-outline .typora-export-sidebar {
            display: none;
        }
    }

    .footnote-line {
        margin-top: 0.714em;
        font-size: 0.7em;
    }

    a img, img a {
        cursor: pointer;
    }

    pre.md-meta-block {
        font-size: 0.8rem;
        min-height: 0.8rem;
        white-space: pre-wrap;
        background-color: rgb(204, 204, 204);
        display: block;
        overflow-x: hidden;
    }

    p > .md-image:only-child:not(.md-img-error) img, p > img:only-child {
        display: block;
        margin: auto;
    }

    #write.first-line-indent p > .md-image:only-child:not(.md-img-error) img {
        left: -2em;
        position: relative;
    }

    p > .md-image:only-child {
        display: inline-block;
        width: 100%;
    }

    #write .MathJax_Display {
        margin: 0.8em 0px 0px;
    }

    .md-math-block {
        width: 100%;
    }

    .md-math-block:not(:empty)::after {
        display: none;
    }

    .MathJax_ref {
        fill: currentcolor;
    }

    [contenteditable="true"]:active, [contenteditable="true"]:focus, [contenteditable="false"]:active, [contenteditable="false"]:focus {
        outline: 0px;
        box-shadow: none;
    }

    .md-task-list-item {
        position: relative;
        list-style-type: none;
    }

    .task-list-item.md-task-list-item {
        padding-left: 0px;
    }

    .md-task-list-item > input {
        position: absolute;
        top: 0px;
        left: 0px;
        margin-left: -1.2em;
        margin-top: calc(1em - 10px);
        border: none;
    }

    .math {
        font-size: 1rem;
    }

    .md-toc {
        min-height: 3.58rem;
        position: relative;
        font-size: 0.9rem;
        border-top-left-radius: 10px;
        border-top-right-radius: 10px;
        border-bottom-right-radius: 10px;
        border-bottom-left-radius: 10px;
    }

    .md-toc-content {
        position: relative;
        margin-left: 0px;
    }

    .md-toc-content::after, .md-toc::after {
        display: none;
    }

    .md-toc-item {
        display: block;
        color: rgb(65, 131, 196);
    }

    .md-toc-item a {
        text-decoration: none;
    }

    .md-toc-inner:hover {
        text-decoration: underline;
    }

    .md-toc-inner {
        display: inline-block;
        cursor: pointer;
    }

    .md-toc-h1 .md-toc-inner {
        margin-left: 0px;
        font-weight: 700;
    }

    .md-toc-h2 .md-toc-inner {
        margin-left: 2em;
    }

    .md-toc-h3 .md-toc-inner {
        margin-left: 4em;
    }

    .md-toc-h4 .md-toc-inner {
        margin-left: 6em;
    }

    .md-toc-h5 .md-toc-inner {
        margin-left: 8em;
    }

    .md-toc-h6 .md-toc-inner {
        margin-left: 10em;
    }

    @media screen and (max-width: 48em) {
        .md-toc-h3 .md-toc-inner {
            margin-left: 3.5em;
        }

        .md-toc-h4 .md-toc-inner {
            margin-left: 5em;
        }

        .md-toc-h5 .md-toc-inner {
            margin-left: 6.5em;
        }

        .md-toc-h6 .md-toc-inner {
            margin-left: 8em;
        }
    }

    a.md-toc-inner {
        font-size: inherit;
        font-style: inherit;
        font-weight: inherit;
        line-height: inherit;
    }

    .footnote-line a:not(.reversefootnote) {
        color: inherit;
    }

    .md-attr {
        display: none;
    }

    .md-fn-count::after {
        content: ".";
    }

    code, pre, samp, tt {
        font-family: var(--monospace);
    }

    kbd {
        margin: 0px 0.1em;
        padding: 0.1em 0.6em;
        font-size: 0.8em;
        color: rgb(36, 39, 41);
        background-color: rgb(255, 255, 255);
        border: 1px solid rgb(173, 179, 185);
        border-top-left-radius: 3px;
        border-top-right-radius: 3px;
        border-bottom-right-radius: 3px;
        border-bottom-left-radius: 3px;
        box-shadow: rgba(12, 13, 14, 0.2) 0px 1px 0px, rgb(255, 255, 255) 0px 0px 0px 2px inset;
        white-space: nowrap;
        vertical-align: middle;
    }

    .md-comment {
        color: rgb(162, 127, 3);
        opacity: 0.6;
        font-family: var(--monospace);
    }

    code {
        text-align: left;
    }

    a.md-print-anchor {
        white-space: pre !important;
        border: none !important;
        display: inline-block !important;
        position: absolute !important;
        width: 1px !important;
        right: 0px !important;
        outline: 0px !important;
        text-shadow: initial !important;
        background-position: 0px 0px !important;
    }

    .os-windows.monocolor-emoji .md-emoji {
        font-family: "Segoe UI Symbol", sans-serif;
    }

    .md-diagram-panel > svg {
        max-width: 100%;
    }

    [lang="flow"] svg, [lang="mermaid"] svg {
        max-width: 100%;
        height: auto;
    }

    [lang="mermaid"] .node text {
        font-size: 1rem;
    }

    table tr th {
        border-bottom-width: 0px;
    }

    video {
        max-width: 100%;
        display: block;
        margin: 0px auto;
    }

    iframe {
        max-width: 100%;
        width: 100%;
        border: none;
    }

    .highlight td, .highlight tr {
        border: 0px;
    }

    mark {
        background-color: rgb(255, 255, 0);
        color: rgb(0, 0, 0);
    }

    .md-html-inline .md-plain, .md-html-inline strong, mark .md-inline-math, mark strong {
        color: inherit;
    }

    .md-expand mark .md-meta {
        opacity: 0.3 !important;
    }

    mark .md-meta {
        color: rgb(0, 0, 0);
    }

    @media print {
        .typora-export h1, .typora-export h2, .typora-export h3, .typora-export h4, .typora-export h5, .typora-export h6 {
            break-inside: avoid;
        }
    }

    .md-diagram-panel .messageText {
        stroke: none !important;
    }

    .md-diagram-panel .start-state {
        fill: var(--node-fill);
    }

    .md-diagram-panel .edgeLabel rect {
        opacity: 1 !important;
    }

    .md-fences.md-fences-math {
        font-size: 1em;
    }

    .md-fences-advanced:not(.md-focus) {
        padding: 0px;
        white-space: nowrap;
        border: 0px;
    }

    .md-fences-advanced:not(.md-focus) {
        background-image: inherit;
        background-size: inherit;
        background-attachment: inherit;
        background-origin: inherit;
        background-clip: inherit;
        background-color: inherit;
        background-position: inherit;
        background-repeat: inherit;
    }

    .typora-export-show-outline .typora-export-content {
        max-width: 1440px;
        margin: auto;
        display: flex;
        flex-direction: row;
    }

    .typora-export-sidebar {
        width: 300px;
        font-size: 0.8rem;
        margin-top: 80px;
        margin-right: 18px;
    }

    .typora-export-show-outline #write {
        --webkit-flex: 2;
        flex: 2 1 0%;
    }

    .typora-export-sidebar .outline-content {
        position: fixed;
        top: 0px;
        max-height: 100%;
        overflow: hidden auto;
        padding-bottom: 30px;
        padding-top: 60px;
        width: 300px;
    }

    @media screen and (max-width: 1024px) {
        .typora-export-sidebar, .typora-export-sidebar .outline-content {
            width: 240px;
        }
    }

    @media screen and (max-width: 800px) {
        .typora-export-sidebar {
            display: none;
        }
    }

    .outline-content li, .outline-content ul {
        margin-left: 0px;
        margin-right: 0px;
        padding-left: 0px;
        padding-right: 0px;
        list-style: none;
    }

    .outline-content ul {
        margin-top: 0px;
        margin-bottom: 0px;
    }

    .outline-content strong {
        font-weight: 400;
    }

    .outline-expander {
        width: 1rem;
        height: 1.428571429rem;
        position: relative;
        display: table-cell;
        vertical-align: middle;
        cursor: pointer;
        padding-left: 4px;
    }

    .outline-expander::before {
        content: "";
        position: relative;
        font-family: Ionicons;
        display: inline-block;
        font-size: 8px;
        vertical-align: middle;
    }

    .outline-item {
        padding-top: 3px;
        padding-bottom: 3px;
        cursor: pointer;
    }

    .outline-expander:hover::before {
        content: "";
    }

    .outline-h1 > .outline-item {
        padding-left: 0px;
    }

    .outline-h2 > .outline-item {
        padding-left: 1em;
    }

    .outline-h3 > .outline-item {
        padding-left: 2em;
    }

    .outline-h4 > .outline-item {
        padding-left: 3em;
    }

    .outline-h5 > .outline-item {
        padding-left: 4em;
    }

    .outline-h6 > .outline-item {
        padding-left: 5em;
    }

    .outline-label {
        cursor: pointer;
        display: table-cell;
        vertical-align: middle;
        text-decoration: none;
        color: inherit;
    }

    .outline-label:hover {
        text-decoration: underline;
    }

    .outline-item:hover {
        border-color: rgb(245, 245, 245);
        background-color: var(--item-hover-bg-color);
    }

    .outline-item:hover {
        margin-left: -28px;
        margin-right: -28px;
        border-left-width: 28px;
        border-left-style: solid;
        border-left-color: transparent;
        border-right-width: 28px;
        border-right-style: solid;
        border-right-color: transparent;
    }

    .outline-item-single .outline-expander::before, .outline-item-single .outline-expander:hover::before {
        display: none;
    }

    .outline-item-open > .outline-item > .outline-expander::before {
        content: "";
    }

    .outline-children {
        display: none;
    }

    .info-panel-tab-wrapper {
        display: none;
    }

    .outline-item-open > .outline-children {
        display: block;
    }

    .typora-export .outline-item {
        padding-top: 1px;
        padding-bottom: 1px;
    }

    .typora-export .outline-item:hover {
        margin-right: -8px;
        border-right-width: 8px;
        border-right-style: solid;
        border-right-color: transparent;
    }

    .typora-export .outline-expander::before {
        content: "+";
        font-family: inherit;
        top: -1px;
    }

    .typora-export .outline-expander:hover::before, .typora-export .outline-item-open > .outline-item > .outline-expander::before {
        content: "−";
    }

    .typora-export-collapse-outline .outline-children {
        display: none;
    }

    .typora-export-collapse-outline .outline-item-open > .outline-children, .typora-export-no-collapse-outline .outline-children {
        display: block;
    }

    .typora-export-no-collapse-outline .outline-expander::before {
        content: "" !important;
    }

    .typora-export-show-outline .outline-item-active > .outline-item .outline-label {
        font-weight: 700;
    }

    .md-inline-math-container mjx-container {
        zoom: 0.95;
    }


    :root {
        --side-bar-bg-color: #fafafa;
        --control-text-color: #777;
    }

    @include-when-export url(https://fonts.loli.net/css?family=Open+Sans:400italic,700italic,700,400&subset=latin,latin-ext);

    /* open-sans-regular - latin-ext_latin */
    /* open-sans-italic - latin-ext_latin */
    /* open-sans-700 - latin-ext_latin */
    /* open-sans-700italic - latin-ext_latin */
    html {
        font-size: 16px;
        -webkit-font-smoothing: antialiased;
    }

    body {
        font-family: "Open Sans", "Clear Sans", "Helvetica Neue", Helvetica, Arial, 'Segoe UI Emoji', sans-serif;
        color: rgb(51, 51, 51);
        line-height: 1.6;
    }

    #write {
        max-width: 860px;
        margin: 0 auto;
        padding: 30px;
        padding-bottom: 100px;
    }

    @media only screen and (min-width: 1400px) {
        #write {
            max-width: 1024px;
        }
    }

    @media only screen and (min-width: 1800px) {
        #write {
            max-width: 1200px;
        }
    }

    #write > ul:first-child,
    #write > ol:first-child {
        margin-top: 30px;
    }

    a {
        color: #4183C4;
    }

    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        position: relative;
        margin-top: 1rem;
        margin-bottom: 1rem;
        font-weight: bold;
        line-height: 1.4;
        cursor: text;
    }

    h1:hover a.anchor,
    h2:hover a.anchor,
    h3:hover a.anchor,
    h4:hover a.anchor,
    h5:hover a.anchor,
    h6:hover a.anchor {
        text-decoration: none;
    }

    h1 tt,
    h1 code {
        font-size: inherit;
    }

    h2 tt,
    h2 code {
        font-size: inherit;
    }

    h3 tt,
    h3 code {
        font-size: inherit;
    }

    h4 tt,
    h4 code {
        font-size: inherit;
    }

    h5 tt,
    h5 code {
        font-size: inherit;
    }

    h6 tt,
    h6 code {
        font-size: inherit;
    }

    h1 {
        font-size: 2.25em;
        line-height: 1.2;
        border-bottom: 1px solid #eee;
    }

    h2 {
        font-size: 1.75em;
        line-height: 1.225;
        border-bottom: 1px solid #eee;
    }

    /*@media print {
        .typora-export h1,
        .typora-export h2 {
            border-bottom: none;
            padding-bottom: initial;
        }

        .typora-export h1::after,
        .typora-export h2::after {
            content: "";
            display: block;
            height: 100px;
            margin-top: -96px;
            border-top: 1px solid #eee;
        }
    }*/

    h3 {
        font-size: 1.5em;
        line-height: 1.43;
    }

    h4 {
        font-size: 1.25em;
    }

    h5 {
        font-size: 1em;
    }

    h6 {
        font-size: 1em;
        color: #777;
    }

    p,
    blockquote,
    ul,
    ol,
    dl,
    table {
        margin: 0.8em 0;
    }

    li > ol,
    li > ul {
        margin: 0 0;
    }

    hr {
        height: 2px;
        padding: 0;
        margin: 16px 0;
        background-color: #e7e7e7;
        border: 0 none;
        overflow: hidden;
        box-sizing: content-box;
    }

    li p.first {
        display: inline-block;
    }

    ul,
    ol {
        padding-left: 30px;
    }

    ul:first-child,
    ol:first-child {
        margin-top: 0;
    }

    ul:last-child,
    ol:last-child {
        margin-bottom: 0;
    }

    blockquote {
        border-left: 4px solid #dfe2e5;
        padding: 0 15px;
        color: #777777;
    }

    blockquote blockquote {
        padding-right: 0;
    }

    table {
        padding: 0;
        word-break: initial;
    }

    table tr {
        border: 1px solid #dfe2e5;
        margin: 0;
        padding: 0;
    }

    table tr:nth-child(2n),
    thead {
        background-color: #f8f8f8;
    }

    table th {
        font-weight: bold;
        border: 1px solid #dfe2e5;
        border-bottom: 0;
        margin: 0;
        padding: 6px 13px;
    }

    table td {
        border: 1px solid #dfe2e5;
        margin: 0;
        padding: 6px 13px;
    }

    table th:first-child,
    table td:first-child {
        margin-top: 0;
    }

    table th:last-child,
    table td:last-child {
        margin-bottom: 0;
    }

    .CodeMirror-lines {
        padding-left: 4px;
    }

    .code-tooltip {
        box-shadow: 0 1px 1px 0 rgba(0, 28, 36, .3);
        border-top: 1px solid #eef2f2;
    }

    .md-fences,
    code,
    tt {
        border: 1px solid #e7eaed;
        background-color: #f8f8f8;
        border-radius: 3px;
        padding: 0;
        padding: 2px 4px 0px 4px;
        font-size: 0.9em;
    }

    code {
        background-color: #f3f4f4;
        padding: 0 2px 0 2px;
    }

    .md-fences {
        margin-bottom: 15px;
        margin-top: 15px;
        padding-top: 8px;
        padding-bottom: 6px;
    }


    .md-task-list-item > input {
        margin-left: -1.3em;
    }

    @media print {
        html {
            font-size: 13px;
        }

        table,
        pre {
            page-break-inside: avoid;
        }

        pre {
            word-wrap: break-word;
        }
    }

    .md-fences {
        background-color: #f8f8f8;
    }

    #write pre.md-meta-block {
        padding: 1rem;
        font-size: 85%;
        line-height: 1.45;
        background-color: #f7f7f7;
        border: 0;
        border-radius: 3px;
        color: #777777;
        margin-top: 0 !important;
    }

    .mathjax-block > .code-tooltip {
        bottom: .375rem;
    }

    .md-mathjax-midline {
        background: #fafafa;
    }

    #write > h3.md-focus:before {
        left: -1.5625rem;
        top: .375rem;
    }

    #write > h4.md-focus:before {
        left: -1.5625rem;
        top: .285714286rem;
    }

    #write > h5.md-focus:before {
        left: -1.5625rem;
        top: .285714286rem;
    }

    #write > h6.md-focus:before {
        left: -1.5625rem;
        top: .285714286rem;
    }

    .md-image > .md-meta {
        /*border: 1px solid #ddd;*/
        border-radius: 3px;
        padding: 2px 0px 0px 4px;
        font-size: 0.9em;
        color: inherit;
    }

    .md-tag {
        color: #a7a7a7;
        opacity: 1;
    }

    .md-toc {
        margin-top: 20px;
        padding-bottom: 20px;
    }

    .sidebar-tabs {
        border-bottom: none;
    }

    #typora-quick-open {
        border: 1px solid #ddd;
        background-color: #f8f8f8;
    }

    #typora-quick-open-item {
        background-color: #FAFAFA;
        border-color: #FEFEFE #e5e5e5 #e5e5e5 #eee;
        border-style: solid;
        border-width: 1px;
    }

    /** focus mode */
    .on-focus-mode blockquote {
        border-left-color: rgba(85, 85, 85, 0.12);
    }

    header, .context-menu, .megamenu-content, footer {
        font-family: "Segoe UI", "Arial", sans-serif;
    }

    .file-node-content:hover .file-node-icon,
    .file-node-content:hover .file-node-open-state {
        visibility: visible;
    }

    .mac-seamless-mode #typora-sidebar {
        background-color: #fafafa;
        background-color: var(--side-bar-bg-color);
    }

    .md-lang {
        color: #b4654d;
    }

    /*.html-for-mac {
        --item-hover-bg-color: #E6F0FE;
    }*/

    #md-notification .btn {
        border: 0;
    }

    .dropdown-menu .divider {
        border-color: #e5e5e5;
        opacity: 0.4;
    }

    .ty-preferences .window-content {
        background-color: #fafafa;
    }

    .ty-preferences .nav-group-item.active {
        color: white;
        background: #999;
    }

    .menu-item-container a.menu-style-btn {
        background-color: #f5f8fa;
        background-image: linear-gradient(180deg, hsla(0, 0%, 100%, 0.8), hsla(0, 0%, 100%, 0));
    }


    @media print {
        @page {
            margin: 0 0 0 0;
        }

        body.typora-export {
            padding-left: 0;
            padding-right: 0;
        }

        #write {
            padding: 0;
        }
    }
    </style>
    <title>安卓考试</title>
</head>
<body class='typora-export'>
<div class="to-home">
    <button>首页</button>
</div>
<div class='typora-export-content'>
    <div id='write' class=''><h3 id='一选择填空'><span>一、选择填空</span></h3>
        <ol start=''>
            <li><span>Android的入口方法名称是（      onCreate    ）。</span></li>
            <li><span>在android中使用SQLiteOpenHelper这个辅助类，生成一个可操作的数据库，调用的方法是（    getReadableDatabase    ）。</span></li>
            <li><span>在界面上创建一个Spinner的步骤是什么（</span></li>
        </ol>
        <p><span>1）在布局文件中添加</span>
            <spinner><span>标记，并为其指定android:entries属性</span>
        </p>
        <p><span>2）编写用于指定列表项的数组资源文件，并将其保存在res/values目录中，在该文件中添加一个字符串组）</span></p>
        <ol start='4'>
            <li><span>在Android应用程序中，图片应放在(   drawable  )目录下。</span></li>
            <li><span>下列哪个可做 Android 数据存储（    SQlite      ）。 </span></li>
            <li><span>Android系统中包括哪4大基本组件？(分别是Activity、BroadcastReceiver、Content Provider和Service。)</span></li>
            <li><span>Activity的可视生命周期包括哪几个（</span></li>
        </ol>
        <p><span>onStart()-&gt;onResume()-&gt;onPause()-&gt;onStop())</span></p>
        <ol start='8'>
            <li><span>启动Service的方法是（    startService       ）。</span></li>
            <li><span>以startService开启服务以下说法正确的是( startService方式开启服务,服务一旦被开启,服务就会在后台长期运行。)。</span></li>
            <li><span>ListView控件的显示数据的方法一般需要哪3步骤（1、定义数据源；2、适配器连接数据源；3、将ListView控件与适配器相关联。）</span></li>
            <li><span>下面代码用于向tb_inaccount表中添加一条记录，请问划线处应该填入（       db.insert(&quot;tb_inaccount&quot;,null , values);    ）代码。</span>
            </li>
        </ol>
        <p><span>ContentValues values=new ContentValues();</span></p>
        <p><span>values.put(&quot;money&quot;. 5000);</span></p>
        <p><span>values.put(&quot;type&quot;. &quot;工资&quot;);</span></p>
        <ol start='12'>
            <li><span>在使用SQLiteOpenHelper这个类时，它的（     onUpgrade    ）方法是用来实现版本升级之用的。</span></li>
        </ol>
        <ol start='13'>
            <li><span>Toast 是一个 View 视图，快速的为用户显示少量的信息。 Toast 在应用程序上浮动显示信息给用户，它永远不会获得焦点，不影响用户的输入等操作，设置显示的提示信息方法是（    makeText   ）。</span>
            </li>
        </ol>
        <ol start='14'>
            <li><span>简述使用SharedPreferences完成数据存储的4个操作步骤。（</span></li>
        </ol>
        <p><span>（1）获得SharedPreferences对象。</span></p>
        <p><span>（2）获得SharedPreferences对象的Editor对象。</span></p>
        <p><span>（3）调用Editor对象的方法向文件添加数据。</span></p>
        <p><span>（4）提交数据。</span></p>
        <p><span>）</span></p>
        <ol start='15'>
            <li><span>如果使用LinearLayout实现组件垂直排列 那么在xml中应添加(   android:orientation=&quot;vertical&quot;   )属性进行设置。</span>
            </li>
        </ol>
        <p><span>1 Android模拟器英文缩写是（      avd    ）。</span></p>
        <ol start='16'>
            <li><span> Android UI开发中，TableLayout的stretchColumns属性表示（    拉伸指定列填充满TableLayout      ）。 </span></li>
        </ol>
        <ol start='17'>
            <li><span>下列方法中，不属于Service 生命周期的是（ onResume      ）。</span></li>
        </ol>
        <ol start='18'>
            <li><span>激活一个Activity活动所用的方法是（   startActivity        ）。</span></li>
        </ol>
        <ol start='19'>
            <li><span>创建一个Android项目时,该项目的图标是在(   .AndroidManifest.xml      )文件中设置的。</span></li>
        </ol>
        <ol start='20'>
            <li><span>在下列选项中，表示Toast较短时间显示信息的是（    Toast.LENGTH_SHORT     ）。 </span></li>
        </ol>
        <ol start='21'>
            <li><span>退出Activity的三种方式？（finish()、抛出异常强制退出、onStop)</span></li>
        </ol>
        <ol start='22'>
            <li><span>Activity销毁时执行执行方法是（     onDestroy   ）</span></li>
        </ol>
        <ol start='23'>
            <li><span>在下列选项中，用于给Activity指定主题的属性是（ theme     ）</span></li>
        </ol>
        <ol start='24'>
            <li><span>激活Activity的方法是(       startActivity  )。</span></li>
        </ol>
        <ol start='25'>
            <li><span>使用HttpURLConnection访问网络时，需要允许（   android.permission.INTERNET      ）项权限。</span></li>
        </ol>
        <ol start='26'>
            <li><span>简述进行Android应用开发需要具备的开发环境。(</span></li>
        </ol>
        <p><span>JDK、SDK、 Eclipse（或Android Studio）还需要为Eclipse安装ADT插件。) </span></p>
        <ol start='27'>
            <li>
                <span>广播分为哪两种（有序广播和无序广播）他们分别用什么方法发送广播（有序广播使用sendOrderedBroadcast()发送广播，而无序广播使用sendBroadcast()方法发送广播。）。</span>
            </li>
        </ol>
        <ol start='28'>
            <li><span>下列方法中，Activity 第一次启动到关闭不会执行的是（    onRestart     ）。 </span></li>
        </ol>
        <ol start='29'>
            <li><span>下面（   帧布局      ）是从屏幕的左上角（0,0）坐标点开始布局，多个组件层叠排序。</span></li>
        </ol>
        <ol start='30'>
            <li><span>通过Runnable接口定义一个支持线程的类,类名是MyRunnable的语句是什么（class MyRunnable implements Runnable）。</span></li>
        </ol>
        <ol start='31'>
            <li><span>关于适配器的说法正确的是（  它主要用来把数据绑定在组件上       ）。</span></li>
        </ol>
        <ol start='32'>
            <li><span>（  rectangleLayout        ）不是Android中的的布局方式。</span></li>
        </ol>
        <p><span> 1通过HTTP访问网络提供了哪几种方法（一种是使用HttpURLConnection实现，另一种是使用HttpClient实现）。</span></p>
        <ol start='33'>
            <li><span> Intent为哪些组件提供交互能力（Activity、BroadcastReceiver和Service。）</span></li>
        </ol>
        <ol start='34'>
            <li><span>当一个新Activity启动入栈后，它在屏幕最前端，处于栈的最顶端，此时它处于可见并可和用户交互的激活状态，则此Activity处于（    Running      ）状态 。</span>
            </li>
        </ol>
        <ol start='35'>
            <li><span>Android中判断CheckBox控件是否选中的方法是(       isChecked      )。</span></li>
        </ol>
        <ol start='36'>
            <li><span>Android 工程中存放各种资源的目录是（    res     ）。 </span></li>
        </ol>
        <ol start='37'>
            <li><span>在创建Android工程时，填写的Minimum Required SDK是（     程序最低兼容的版本  ）。 </span></li>
        </ol>
        <ol start='38'>
            <li><span>实现调用另一个Activity并返回结果时通常需要应用哪几个方法（</span></li>
        </ol>
        <p><span>startActivityForResult方法、</span></p>
        <p><span>setResult方法 </span></p>
        <p><span>onActivityResult方法。)</span></p>
        <ol start='39'>
            <li><span>Android 关于启动方式的service生命周期的onCreate()和onStartCommand()方法，说法正确的是（  .如果service已经启动，只会执行onStartCommand ()方法，不再执行onCreate()方法       ）。</span>
            </li>
        </ol>
        <ol start='40'>
            <li><span> 向SQLite数据库添加记录操作的方法是（   insert()      ）。    </span></li>
        </ol>
        <ol start='41'>
            <li><span>Android程序生命周期内存在哪些进程(前台进程、可见进程、服务进程、后</span></li>
        </ol>
        <p><span>台进程和空进程)这些进程的优先级最高的进程是（前台进程）。</span></p>
        <ol start='42'>
            <li><span>继承所需的关键词是（   extends       ）。</span></li>
        </ol>
        <ol start='43'>
            <li><span>在AndroidManifest.xml中描述一个Activity时，该Activity的label属性是（       指定该Activity的显示标签   ）。    </span></li>
        </ol>
        <ol start='44'>
            <li><span>Android按键处理方法是（    onClick      ）。</span></li>
        </ol>
        <ol start='45'>
            <li><span>继承所需的关键词是（   extends       ）。</span></li>
        </ol>
        <h3 id='二程序填空'><span>二、程序填空</span></h3>
        <p><span> 实现在第一个编辑框（ID号：mima）中输入密码，在第二个编辑框（ID号：账号）中输入账号，单击“登记”按钮（ID号：write）时，实现登登记功能。</span></p>
        <p><img src="./image-4.png"
                alt="image-20211203102519064" style="zoom: 25%;"/></p>
        <p><span> </span><img
                src="./image-1.png"
                alt="image-20211203101924877" style="zoom:67%;"/></p>
        <p><img src="./image-2.png"
                alt="image-20211203102050863"/></p>
        <p><span>三、完成AndroidManifest.xml程序</span></p>
        <p><img src="./image-3.png"
                referrerpolicy="no-referrer" alt="image-20211203102439348"></p>
        <h3 id='四编程题'><span>四、编程题</span></h3>
        <p><span>实验指导书 实验二、三、四、五</span></p>
        <p>&nbsp;</p>
        <p><span> </span></p>
        <p>&nbsp;</p>
        <p><span> </span></p>
        <p>&nbsp;</p>
        <p><span> </span></p>
        <p>&nbsp;</p>
        <p><span> </span></p>
        <p>&nbsp;</p>
        <p><span> </span></p>
        <p>&nbsp;</p>
        <p><span> </span></p>
        <p>&nbsp;</p>
        <p><span> </span></p></div>
</div>
<script src="./main.js"></script>
</body>
</html>